Many users around the world are on instant messaging or chat apps in order to get instant reaction. Organizations often use instant messaging or chat platforms to engage with customers or end users intelligently and contextually in live conversation. However, it can be very costly for organizations to employ service people to engage in live communication with customers or end users. A chatbot or bot is a computer program designed to simulate conversations with human users, especially over the Internet. End users can communicate with bots through many messaging apps that the end users have already installed and used, without the need to individually download and install new apps from, for example, an App store. An intelligent bot, generally powered by artificial intelligence (AI), can improve the conversational experience, allowing a more natural conversation between the bot and the end user. Instead of the end user learning a fixed set of keywords or commands that the bot knows how to respond to, an intelligent bot may be able to understand the end user's intention based on user utterances in natural language and respond accordingly. In many cases, determining the end user's intent in order to respond properly is a challenging task in part due to the subtleties and ambiguity of natural languages.